home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / man / cat.1 / xanim.1 < prev    next >
Text File  |  1995-08-01  |  40KB  |  859 lines

  1.  
  2.  
  3.  
  4.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.           xanim - multiformat animation viewer for X
  10.  
  11.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  12.           xxxxaaaannnniiiimmmm [ ++++VVVV_n_u_m ] [ ++++AAAA_a_o_p_t_s ] [ ++++CCCC_c_o_p_t_s ] [ ++++GGGG_g_o_p_t_s ] [
  13.                ++++MMMM_m_o_p_t_s ] [ ++++SSSS_s_o_p_t_s ] [ ++++ZZZZ_z_o_p_t_s ] [ ++++_o_p_t_s ] _a_n_i_m_f_i_l_e [
  14.                [ ++++_o_p_t_s ] [ _a_n_i_m_f_i_l_e ] ... ]
  15.  
  16.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  17.           _X_A_n_i_m is a program that can display animations of various
  18.           formats on systems running X11. _X_A_n_i_m currently supports the
  19.           following animation types:
  20.  
  21.                ++++  FLI animations.
  22.                ++++  FLC animations.
  23.                ++++  IFF animations. The following features are
  24.                   supported:
  25.                     -> Compressions 3,5,7,J(movies) and l(small L).
  26.                     -> Color cycling during single images and anims.
  27.                     -> Display Modes: depth 1-8, EHB, HAM and HAM8.
  28.                ++++  GIF87a and GIF89a files.
  29.                     -> single and multiple images supported.
  30.                     -> GIF89a animation extensions supported.
  31.                ++++  GIF89a animation extension support.
  32.                ++++  a kludgy text file listing gifs and what order to
  33.                   show them in.
  34.                ++++  DL animations. Formats 1, 2 and partial 3.
  35.                ++++  Amiga PFX(PageFlipper Plus F/X) animations. TEMP
  36.                   DISABLED
  37.                ++++  Amiga MovieSetter animations(For those Eric Schwartz
  38.                   fans).
  39.                ++++  Utah Raster Toolkit RLE images and anims.
  40.                ++++  AVI animations. Currently supported are
  41.                     -> IBM Ultimotion     (ULTI) depth 16.
  42.                     -> JPEG               (JPEG) depth 24.
  43.                     -> Motion JPEG        (MJPG) depth 24.
  44.                     -> Intergraph JPEG    (IJPG) depth 24.
  45.                     -> Microsoft Video 1  (CRAM) depth 8 and 16.
  46.                     -> SuperMac Cinepak   (CVID) depth 24.
  47.                     -> Uncompressed       (RGB ) depth 8.
  48.                     -> Uncompressed       (RGB ) depth 24.
  49.                     -> Run length encoded (RLE8) depth 8.
  50.                     -> Editable MPEG      (XMPG) depth 24.
  51.                ++++  Quicktime Animations. The following features are
  52.                   supported:
  53.                     -> Uncompressed     (RAW ) depth 4,8,16,24 and 24+
  54.                     -> Uncompressed     (RAW ) Gray depth 4 and 8.
  55.                     -> Apple Graphics   (RLE ) depth 1,8,16 and 24.
  56.                     -> Apple Graphics   (RLE ) GRAY depth 8.
  57.                     -> Apple Animation  (SMC ) depth 8 and GRAY 8.
  58.                     -> Apple Video      (RPZA) depth 16.
  59.                     -> SuperMac Cinepak (CVID) depth 24 and GRAY 8.
  60.  
  61.  
  62.  
  63.      Page 1                                           (printed 8/1/95)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  71.  
  72.  
  73.  
  74.                     -> Component Video  (YUV2) depth 24.
  75.                     -> Photo JPEG       (JPEG) depth 8 and 24.
  76.                     -> Supports multiple video trak's.
  77.                     -> Supports animations with multiple codecs.
  78.                     -> Supports merged and separated resource forks.
  79.                ++++  JFIF images. NOTE: use XV for single images. This is
  80.                   more for animation of a sequence of JPEG images.
  81.                ++++  MPEG animations. Currently only Type I Frames are
  82.                   displayed. Type B and Type P frames are currently
  83.                   ignored, but will be added in future revs.
  84.                ++++  WAV audio files may have their sound added to any
  85.                   animation type that doesn't already have audio, by
  86.                   specifying the .wav file after the animation file on
  87.                   the command line. Currently only the PCM audio codec
  88.                   is supported.
  89.                ++++  any combination of the above on the same command
  90.                   line.
  91.  
  92.           _X_A_n_i_m also provides various options that allow the user to
  93.           alter colormaps, playback speeds, looping modes and can
  94.           provide on-the-fly scaling of animations with the mouse.
  95.  
  96.      OOOOPPPPTTTTIIIIOOOONNNNSSSS
  97.           A + will generally turn an option on and a - will turn an
  98.           option off.  This can be reversed at compile time. (see
  99.           _x_a_n_i_m__c_o_n_f_i_g._h).
  100.  
  101.           In each SubMenu, the options can be run together with no
  102.           intervening spaces. In the list of SubMenu options presented
  103.           below, the first letter given is the letter that specifies
  104.           the SubMenu and should NOT be repeated if several SubMenu
  105.           options are to be run together.
  106.  
  107.           For example, "+Cn +Cs10 +CF4" can also be written as
  108.           "+Cns10F4" or "+CF4s10n".
  109.  
  110.           A + or a - within a SubMenu will be an exit from that
  111.           submenu.  Options will affect all animations following the
  112.           invocation of that option. Some options may be changed in
  113.           between animations without affecting previous animations.
  114.  
  115.           In the following sections, an _n_u_m represents an integer
  116.           number and an _f_n_u_m represents a floating point number. If a
  117.           floating point number is of an integer amount, the . need
  118.           not be specified. There should be no spaces between the
  119.           option and the numbers.
  120.  
  121.           _a_o_p_t_s SubMenu for Audio Options
  122.  
  123.                ++++AAAADDDD_d_e_v  AIX Only. Specify audio device. Default is
  124.                        /dev/paud0/1 . Another common audio device is
  125.                        /dev/acpa0/1 . For example: "+AD/dev/acpa0/1".
  126.  
  127.  
  128.  
  129.      Page 2                                           (printed 8/1/95)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  137.  
  138.  
  139.  
  140.                ++++AAAAeeee     Audio Enable. XAnim will ignore audio data if
  141.                        this option is not used.
  142.  
  143.                ++++AAAAkkkk     This option allows XAnim to skip video frames
  144.                        in order to help keep video in sync with audio.
  145.                        default is on.
  146.  
  147.                ++++AAAAssss_f_n_u_m Scale Audio playback speed by "fnum". Only the
  148.                        range 0.125 to 8.00 is allowed.
  149.  
  150.                ++++AAAApppp_n_u_m  This turns a hardware specific Audio port on or
  151.                        off. The default port is selectable in
  152.                        xanim_config.h. It's shipped with internal
  153.                        speaker as default.
  154.  
  155.                         0 - internal speaker
  156.  
  157.                         1 - headphones or external speaker
  158.  
  159.                         2 - line out
  160.  
  161.                ++++AAAAvvvv_n_u_m  Sets the inital Audio Volume(0-255) with 0 the
  162.                        lowest. default is 100.
  163.  
  164.           _c_o_p_t_s SubMenu for Color Options
  165.  
  166.                ++++CCCC1111     Create a colormap from the first frame of a
  167.                        TrueColor anim and then remap the remaining
  168.                        frames to this colormap. This can potentially
  169.                        add significant time to the startup of an
  170.                        animation but usually results in better colors.
  171.                        The animation needs to be buffered for this
  172.                        option to work. Not valid for TrueColor or
  173.                        DirectColor displays(nor is it needed).
  174.  
  175.                ++++CCCC3333     Convert TrueColor anims to 332(StaticColor).
  176.                        TrueColor anims are animations that provide
  177.                        separate RGB info for each pixel, rather than
  178.                        each pixel being an index into a global
  179.                        colormap. AVI(16bit CRAM), QT(RPZA and RLE
  180.                        depth 16 and 24) and URT RLE 24 bit anims are
  181.                        examples of TrueColor anims. This option is
  182.                        ignored for TrueColor or DirectColor displays.
  183.  
  184.                ++++CCCCAAAA     Create a colormap from each frame of a
  185.                        TrueColor anim. This can be useful if the
  186.                        colors radically change during the course of
  187.                        the animation. This can take a VERY,VERY long
  188.                        time at start up. Animation must be buffered.
  189.                        This option is ignored for TrueColor or
  190.                        DirectColor displays.
  191.  
  192.  
  193.  
  194.  
  195.      Page 3                                           (printed 8/1/95)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  203.  
  204.  
  205.  
  206.                ++++CCCCaaaa     Remap all images to single new cmap created
  207.                        from all of the colormaps.
  208.  
  209.                ++++CCCCdddd     Use Floyd-Steinberg dithering if needed for
  210.                        non-monochrome displays.  This will cause a
  211.                        reduction in playback speed.
  212.  
  213.                ++++CCCCffff     Forcibly remap to all frames to 1st frame's
  214.                        cmap.
  215.  
  216.                ++++CCCCFFFF0000    Disables +CF4.
  217.  
  218.                ++++CCCCFFFF4444    This option samples the colors of true color
  219.                        animations ahead of time and forms a color
  220.                        lookup table.  Beats the just truncating to a
  221.                        RGB 332 color table and IMHO beats dithering.
  222.                        See the +s option below(also in copts submenu).
  223.                        NOTE: this is now on by default.
  224.  
  225.                ++++CCCCgggg     Convert TrueColor anims to gray scale. This
  226.                        option is ignored for TrueColor and DirectColor
  227.                        displays.
  228.  
  229.                ++++CCCChhhh     Use histogram to aid in color reduction.
  230.                        Histrogramming is only done on frames that are
  231.                        buffered.
  232.  
  233.                ++++CCCCmmmm     This option is currently needed if you want to
  234.                        dither TrueColor anims to a 332 colormap.
  235.                        Animation must be buffered. Typically +bC3dm is
  236.                        the option to use. This can take a VERY long
  237.                        time at start up.
  238.  
  239.                ++++CCCCnnnn     Don't create new colormap but instead allocate
  240.                        colors from the X11 Display's default cmap.
  241.  
  242.                ++++CCCCssss_n_u_m  This is the number of frames the +CF4 option
  243.                        looks at ahead of time. More frames potentially
  244.                        yields better colors results, but takes more
  245.                        time at start up.  default is 5.
  246.  
  247.           _g_o_p_t_s SubMenu for Gamma Options
  248.  
  249.                ++++GGGGaaaa_f_n_u_m Set gamma of animation to be displayed.
  250.  
  251.                ++++GGGGdddd_f_n_u_m Set gamma of display. 1.0 is no change. gamma's
  252.                        greater than 1.0 typically brighten the
  253.                        animation.
  254.  
  255.           _m_o_p_t_s SubMenu for Median-Cut Quantization Options
  256.  
  257.                ++++MMMMaaaa     compute box color from average of box.
  258.  
  259.  
  260.  
  261.      Page 4                                           (printed 8/1/95)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  269.  
  270.  
  271.  
  272.                ++++MMMMcccc     compute box color as center of box.
  273.  
  274.                ++++MMMMbbbb_n_u_m  Truncate rgb to _n_u_m bits before quantizing.
  275.  
  276.           _s_o_p_t_s SubMenu for Scaling Options
  277.  
  278.                ++++SSSSiiii     Half the height of IFF anims if they are
  279.                        interlaced.(Not completely reliable since not
  280.                        all IFF anims correctly identify themselves as
  281.                        interlaced).
  282.  
  283.                ++++SSSSnnnn     Prevents X11 window from resizing to match
  284.                        animations's size.
  285.  
  286.                ++++SSSSrrrr     Allow user to resize animation on the fly.
  287.                        Enlarging an animation can greatly reduce
  288.                        playback speed depending on the power of the
  289.                        cpu.
  290.  
  291.                ++++SSSSssss_f_n_u_m Scale the size of animation by _f_n_u_m before
  292.                        displaying.
  293.  
  294.                ++++SSSShhhh_f_n_u_m Scale the horizontal size of the animation by
  295.                        _f_n_u_m before displaying.
  296.  
  297.                ++++SSSSvvvv_f_n_u_m Scale the vertical size of the animation by
  298.                        _f_n_u_m before displaying.
  299.  
  300.                ++++SSSSxxxx_n_u_m  Scale the animation to have width _n_u_m before
  301.                        displaying.
  302.  
  303.                ++++SSSSyyyy_n_u_m  Scale the animation to have height _n_u_m before
  304.                        displaying.
  305.  
  306.                ++++SSSScccc     Copy display scaling factors to display
  307.                        buffering factors.
  308.  
  309.                ++++SSSSSSSS_f_n_u_m Scale the size of the animation by _f_n_u_m before
  310.                        buffering it.
  311.  
  312.                ++++SSSSHHHH_f_n_u_m Scale the horizontal size of the animation by
  313.                        _f_n_u_m before buffering it.
  314.  
  315.                ++++SSSSVVVV_f_n_u_m Scale the vertical size of the animation by
  316.                        _f_n_u_m before buffering it.
  317.  
  318.                ++++SSSSXXXX_n_u_m  Scale the animation to have width _n_u_m before
  319.                        buffering it.
  320.  
  321.                ++++SSSSYYYY_n_u_m  Scale the animation to have height _n_u_m before
  322.                        buffering it.
  323.  
  324.  
  325.  
  326.  
  327.      Page 5                                           (printed 8/1/95)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  335.  
  336.  
  337.  
  338.                ++++SSSSCCCC     Copy buffer scaling factors to display scaling
  339.                        factors.
  340.  
  341.           _z_o_p_t_s SubMenu for Special Options
  342.  
  343.                ++++ZZZZeeee     XAnim will exit after playing through command
  344.                        line once.
  345.  
  346.                ++++ZZZZpppp_n_u_m  XAnim pause at frame _n_u_m and then wait for user
  347.                        input. Several pauses may be specified. Each
  348.                        group of pauses will only affect the animation
  349.                        immediately following them on the command line.
  350.                        Pauses will occur at least once.
  351.  
  352.                ++++ZZZZrrrr     This option enables the Remote Control Window.
  353.                        This overrides the default condition set in
  354.                        xanim_config.h. Remote Control support must be
  355.                        compiled into XAnim for this to work.
  356.  
  357.           Normal Options
  358.  
  359.                ++++bbbb      Uncompress and buffer images before displaying.
  360.                        This only applies to AVI, QT, IFF, FLI, FLC,
  361.                        JPEG, MPEG and DL animations. The rest(GIF87a,
  362.                        GIF89a, PFX and RLE) are currently always
  363.                        uncompressed and buffered. This is cleared by
  364.                        the +f option.
  365.  
  366.                ++++BBBB      Used X11 Shared Memory(if present) for
  367.                        unbuffered animations only.(This is mutually
  368.                        exclusive with +b above).
  369.  
  370.                ++++ffff      Don't load anim into memory, but read each
  371.                        section only when needed. This is supported
  372.                        only for AVI, QT, IFF, FLI, FLC, JPEG, MPEG and
  373.                        DL animations. This option is cleared by the +b
  374.                        option.  This saves memory at the cost of
  375.                        speed.
  376.  
  377.                ++++cccc      let xanim know that iff anim is a nonlooping
  378.                        one.
  379.  
  380.                ++++dddd_n_u_m   debug switch. _n_u_m can be from 0(off) to 5(most)
  381.                        for level of detail.
  382.  
  383.                ++++FFFF      Floyd-Steinberg dithering when needed.
  384.  
  385.                ++++jjjj_n_u_m   _n_u_m is the number of milliseconds between
  386.                        frames. if 0 then the time specified in the
  387.                        animation is used for timing purposes.
  388.  
  389.                ++++llll_n_u_m   loop animation _n_u_m number of times before
  390.  
  391.  
  392.  
  393.      Page 6                                           (printed 8/1/95)
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  401.  
  402.  
  403.  
  404.                        moving on to next animation.
  405.  
  406.                ++++llllpppp_n_u_m  ping-pong animation _n_u_m number of times before
  407.                        moving on to next animation.
  408.  
  409.                ++++NNNN      don't display images. Useful for benchmarking.
  410.  
  411.                ++++oooo      turns on certain optimizations. See
  412.                        _x_a_n_i_m._r_e_a_d_m_e.
  413.  
  414.                ++++pppp      Use Pixmap instead of Image in X11. This option
  415.                        has no effect if the animation is
  416.                        buffered(either by default or with the +b
  417.                        option).
  418.  
  419.                ++++qqqq      Prevents XAnim from printing out the title
  420.                        header. Useful for when XAnim is called by
  421.                        other programs where no tty output is
  422.                        desired(doesn't affect +v or +d# options).
  423.  
  424.                ++++rrrr      Allow color cycling for IFF single images.
  425.  
  426.                ++++RRRR      Allow color cycling for IFF anims. (default
  427.                        should be off)
  428.  
  429.                ++++TTTT0000     Title option 0. Title is just XAnim.
  430.  
  431.                ++++TTTT1111     Title option 1. Title is current anim name.
  432.                        When anim is stopped, the current frame number
  433.                        is included.
  434.  
  435.                ++++TTTT2222     Title option 2. Title is current anim name and
  436.                        current frame number.
  437.  
  438.                ++++vvvv      Verbose mode. Gives some information about
  439.                        animation such as size, number of frames, etc.
  440.  
  441.                ++++VVVV_n_u_m   Select X11 Visual to use when displaying
  442.                        animation. The _n_u_m is obtained by using the +X
  443.                        option of xanim.
  444.  
  445.                ++++VVVV_c_l_a_s_s Select the best X11 Visual of Class _c_l_a_s_s when
  446.                        displaying the animation. _c_l_a_s_s can be anyone
  447.                        of the following strings and is case
  448.                        insensitive. (ie StaTicGraY is same as
  449.                        staticgray).
  450.  
  451.                        ssssttttaaaattttiiiiccccggggrrrraaaayyyy    Select best StaticGray Visual.
  452.  
  453.                        ggggrrrraaaayyyyssssccccaaaalllleeee     Select best GrayScale Visual.
  454.  
  455.                        ssssttttaaaattttiiiiccccccccoooolllloooorrrr   Select best StaticColor Visual.
  456.  
  457.  
  458.  
  459.      Page 7                                           (printed 8/1/95)
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  467.  
  468.  
  469.  
  470.                        ppppsssseeeeuuuuddddooooccccoooolllloooorrrr   Select best PseudoColor Visual.
  471.  
  472.                        ttttrrrruuuueeeeccccoooolllloooorrrr     Select best TrueColor Visual.
  473.  
  474.                        ddddiiiirrrreeeeccccttttccccoooolllloooorrrr   Select best DirectColor Visual.
  475.  
  476.                ++++XXXX      X11 verbose mode. Display information about the
  477.                        support X11 visuals.
  478.  
  479.  
  480.  
  481.      WWWWIIIINNNNDDDDOOOOWWWW CCCCOOOOMMMMMMMMAAAANNNNDDDDSSSS
  482.           Once the animation is up and running there are various
  483.           commands that can be entered into that animation window from
  484.           the keyboard.
  485.  
  486.           qqqq         quit.
  487.  
  488.           QQQQ         Quit.
  489.  
  490.           gggg         Stop color cycling.
  491.  
  492.           rrrr         Restore original Colors(useful after g).
  493.  
  494.           wwww         Restore original window size(useful after
  495.                     resizing).
  496.  
  497.           zzzz         This pops up or removes the Remote Control Window.
  498.                     Remote Control support must be compiled into XAnim
  499.                     for this to work.
  500.  
  501.           <<<<ssssppppaaaacccceeee>>>>   Toggle. starts/stops animation.
  502.  
  503.           ,,,,         Single step back one frame.
  504.  
  505.           ....         Single step forward one frame.
  506.  
  507.           <<<<         Go back to start of previous anim.
  508.  
  509.           >>>>         Go forward to start of next anim.
  510.  
  511.           mmmm         Single step back one frame staying within anim.
  512.  
  513.           ////         Single step forward one frame staying within anim.
  514.  
  515.           ----         Increase animation playback speed.
  516.  
  517.           ====         Decrease animation playback speed.
  518.  
  519.           0000         Reset animation playback speed to original values.
  520.  
  521.           AUDIO RELATED WINDOW COMMANDS
  522.  
  523.  
  524.  
  525.      Page 8                                           (printed 8/1/95)
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  533.  
  534.  
  535.  
  536.           1111         Decrement volume by 10.
  537.  
  538.           2222         Decrement volume by 1.
  539.  
  540.           3333         Increment volume by 1.
  541.  
  542.           4444         Increment volume by 10.
  543.  
  544.           ssss         Toggle. Audio Volume(MUTE). on/off.
  545.  
  546.           8888         Toggle. Main Speaker. on/off.
  547.  
  548.           9999         Toggle. Headphones. on/off.
  549.  
  550.  
  551.  
  552.      MMMMOOOOUUUUSSSSEEEE BBBBUUUUTTTTTTTTOOOONNNNSSSS
  553.           Once the animation is up and running the mouse buttons have
  554.           the following functions.
  555.  
  556.           <<<<LLLLeeeefffftttt____BBBBuuuuttttttttoooonnnn>>>>
  557.                     Single step back one frame.
  558.  
  559.           <<<<MMMMiiiiddddddddlllleeee____BBBBuuuuttttttttoooonnnn>>>>
  560.                     Toggle. starts/stops animation.
  561.  
  562.           <<<<RRRRiiiigggghhhhtttt____BBBBuuuuttttttttoooonnnn>>>>
  563.                     Single step forward one frame.
  564.  
  565.      BBBBUUUUFFFFFFFFEEEERRRRIIIINNNNGGGG,,,, PPPPIIIIXXXXMMMMAAAAPPPPSSSS aaaannnndddd RRRREEEEAAAADDDD____FFFFRRRROOOOMMMM____FFFFIIIILLLLEEEE OOOOppppttttiiiioooonnnnssss
  566.           XAnim by default will read the entire animation into memory.
  567.           PFX, Moviesetter, GIF or URT RLE type animations are always
  568.           uncompressed and stored in memory as individual images.
  569.  
  570.           For the AVI, QT, IFF, FLI/FLC, JPEG, MPEG and DL animations,
  571.           only the compressed delta is stored. These deltas are then
  572.           uncompressed each time they need to be displayed. The buffer
  573.           option(+b) may be used to potentially speed up playback by
  574.           uncompressing and storing these images ahead of time. But
  575.           more memory is used up in the process.
  576.  
  577.           When an XPutImage is called, the image typically gets copied
  578.           twice, once to memory and then from there onto the display.
  579.           A pixmap is directly copied onto the display without the
  580.           first copy. This is why it is sometimes much faster to use
  581.           the pixmap option(+p).  Each image isn't converted into a
  582.           pixmap until the first time it is displayed. This is why the
  583.           first loop of an animation using this option is sometimes
  584.           slower than subsequent loops. While the pixmap option may
  585.           improve playback speed, it will slow things down if on-the-
  586.           fly scaling needs to be performed. This is because XAnim no
  587.           longer has direct access to the image and needs to get a
  588.  
  589.  
  590.  
  591.      Page 9                                           (printed 8/1/95)
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  599.  
  600.  
  601.  
  602.           copy of it before it can be scaled.
  603.  
  604.           The read from file option(+f) causes XAnim not to store the
  605.           compressed deltas in memory. Instead as each image is to be
  606.           displayed, XAnim reads the corresponding compressed delta
  607.           from the file, expands it and then displays it. While this
  608.           can dramatically cut down on memory usage, the necessary
  609.           reads from disk(or whatever) can slow down playback speed.
  610.           XAnim still needs to allocate one to three image buffers
  611.           depending on the type of animation and the scaling options
  612.           used. This option is only supported for AVI, QT, FLI/FLC,
  613.           IFF, JPEG, MPEG and DL animations. The BODY chunk of IFF
  614.           animations is not included in this. As a result, an IFF
  615.           animation that is made up of several BODY chunks will not
  616.           currently benefit from this option.
  617.  
  618.      SSSSCCCCAAAALLLLIIIINNNNGGGG OOOOppppttttiiiioooonnnnssss
  619.           There are two sets of scaling options. One set, the display
  620.           scaling factors,  affects the size of the animation as it is
  621.           displayed. The other set, the buffer scaling factors, affect
  622.           the size of the images as they are stored in
  623.           memory(buffered). The buffer scaling factors only affect
  624.           animations that are buffered and can greatly increase or
  625.           decrease memory usage.
  626.  
  627.           These two sets are completely independent of each other. You
  628.           can set the buffer scaling factors to 20 times the normal
  629.           animation size and not affect the size at which that
  630.           animation is displayed. The images are stored at 20 times
  631.           the normal size(and at 400 times the memory usage), but then
  632.           get scaled back down to normal size before being displayed.
  633.           NOTE: that an animation must be buffered in order for the
  634.           buffer scaling factors to have any affect on it. The display
  635.           scaling factors affect all animations.
  636.  
  637.           You can create pixellation like affects by buffering the
  638.           animation at 1/8 it's normal size, but keeping the display
  639.           scaling factors at the original size. (IE "xanim +bSS0.125
  640.           anim.anim").
  641.  
  642.           Many times it's faster to store and display an animation
  643.           with large dimensions at half-size. The option "+bSS0.5C" or
  644.           "+bSS0.5s0.5" both will accomplish this. To save memory, you
  645.           could even store the animation at half size and yet display
  646.           it at full size. "+bSS0.5" will accomplish this.
  647.  
  648.      FFFFOOOORRRRWWWWAAAARRRRDDDDSSSS,,,, BBBBAAAACCCCKKKKWWWWAAAARRRRDDDDSSSS aaaannnndddd OOOOPPPPTTTTIIIIMMMMIIIIZZZZAAAATTTTIIIIOOOONNNN....
  649.           Many type of animations(FLI/FLC/IFF/some AVI and QTs) are
  650.           compressed with forward playback in mind only. Each delta
  651.           only stores the difference between the current frame and the
  652.           previous frame. As a results, most of these animations don't
  653.           display correctly when played backwards.  Even when buffered
  654.  
  655.  
  656.  
  657.      Page 10                                          (printed 8/1/95)
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  665.  
  666.  
  667.  
  668.           up, these may not work, since XAnim only stores the smallest
  669.           rectangle that encompasses the changes from the previous
  670.           frame. You can force XAnim to store the entire frame by
  671.           specifying the "-o" option to turn this optimization off.
  672.           This will most likely use more memory and slow down the
  673.           animation, since more of the image needs to be stored and/or
  674.           displayed.
  675.  
  676.      CCCCOOOOLLLLOOOORRRR OOOOPPPPTTTTIIIIOOOONNNNSSSS
  677.           Most of this will be a TBD for a future rev and what's here
  678.           might be sketchy, incomplete or just plain confusing.
  679.  
  680.           TrueColor and DirectColor displays don't need to worry about
  681.           most of these options, as the animations can be displayed in
  682.           their original colors(ignoring monitor variations etc).
  683.           However, TrueColor and DirectColor displays can't display
  684.           animations that employ color cycling techniques where the
  685.           colormap changes from frame to frame.  DirectColor could
  686.           potentially support this, but not TrueColor.
  687.  
  688.           For the rest of the displays, the problem becomes matching
  689.           the colors in the animations to the available colors of the
  690.           Display.  For most PseudoColor displays this means 256
  691.           colors. Many of which are already in use by various other
  692.           programs. XAnim defaults to creating it's own colormap and
  693.           using all the colors from that. The window manager then
  694.           installs this new colormap, whenever the mouse pointer is
  695.           inside the XAnim animation window(Sometimes a specific
  696.           action is required to change the ColorMap Focus, like
  697.           clicking in the window or pressing a specific key). In any
  698.           case, this action usually causes all the other colors on the
  699.           screen to be temporarily "messed-up" until the mouse is
  700.           moved out of the animation window. The alternative, is to
  701.           use the "+Cn" option. Now XAnim tries allocating all the
  702.           colors it needs from the current colormap. If it can't get a
  703.           certain color, then XAnim choose one that is "close" to this
  704.           certain color. Close is completely arbitrary. The animation
  705.           is now displayed in colors that are different than the
  706.           original colors. This difference may or may not be
  707.           noticeable.
  708.  
  709.           Another big problem is when the animations are what I called
  710.           TrueColor animations. Where each pixel is stored as RGB
  711.           triplets. For example, AVI 16 bit CRAM animations. Each
  712.           pixel has 5 bits of Red, 5 bits of Green and 5 bits of Blue
  713.           info associated with it. This means there can be up to 32768
  714.           unique colors in each image. And on most PseudoColor
  715.           displays we can only display 256 unique colors. Beside
  716.           getting better displays, what can we do? XAnim defaults to
  717.           truncating the RGB information from 555 to 332. That is to 3
  718.           bits of Red, 3 bits of Green and 2 bits of Blue. Less on
  719.           Blue because the human eye is more sensitive to Red and
  720.  
  721.  
  722.  
  723.      Page 11                                          (printed 8/1/95)
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  731.  
  732.  
  733.  
  734.           Green than Blue.  This 332 colormap happens to be 256 colors
  735.           in size, which nicely fits in with our display. If our
  736.           display only had 64 colors, then XAnim is smart enough to
  737.           truncate things down to 222. Now the problem is the colors
  738.           of the displayed anim are noticeably different than the
  739.           original colors.  Typically you can see color banding etc.
  740.           While this is fine to get a feel for the animation, we can
  741.           do better. One of the solutions XAnim currently offers is
  742.           the "+bC1" option. What this does is choose the the best 256
  743.           colors from the first image of the animation. Then each
  744.           pixel of each subsequent image is remapped to one of these
  745.           256 colors.  This takes up some CPU time up front and more
  746.           memory since each image needs to be buffered, but results in
  747.           a colors that are closer to the originals.  Another option,
  748.           "+bCA", chooses the best 256 from each image, then 256
  749.           colors from all these colormaps are chosen as the final
  750.           colormap.  This is useful if the colors in the first image
  751.           aren't representative of the rest of the animation. This can
  752.           be very slow. Another option that is supported, but not
  753.           really optimized for yet is "+bC3dm". This causes XAnim to
  754.           use a 332 colormap and then apply a Floyd-Steinberg dither
  755.           algorithm to each image.  Currently this is very slow.
  756.           Different dithers(like Ordered) and better optimizations
  757.           might speed this up in future revs. In general, handling of
  758.           TrueColor animations in XAnim needs to be improved.
  759.  
  760.           Another scenario where colors need to be remapped, is when
  761.           several images or animations with different colormaps need
  762.           to be displayed.  Changing the colormap usually results in
  763.           an annoying flicker. One solution to this is to remap all of
  764.           the images/animations to the same colormap. The "+Ca" option
  765.           chooses the best colors from all the colormaps and then
  766.           remaps all the images to it. The "+Cf" option, simply remaps
  767.           everything to the first colormap.  The "+Ch" option is
  768.           useful when an animation's colormap specifies a lot of
  769.           colors that aren't used. XAnim looks through each buffered
  770.           image of the animation and makes a histogram of the useage
  771.           of each color. This information is then used to weedout
  772.           unused or rarely used colors.
  773.  
  774.      QQQQUUUUIIIICCCCKKKKTTTTIIIIMMMMEEEE AAAANNNNIIIIMMMMAAAATTTTIIIIOOOONNNNSSSS
  775.           Quicktime animations are usually stored in two separate
  776.           files. One is call a data fork and ends with a ".data". The
  777.           other is a resource fork and ends in a ".rsrc". Sometimes
  778.           these animations are in a "flattened/merged fork" format,
  779.           where everything is put into one file. There's no standard
  780.           naming format for these types of files, although usually .qt
  781.           or .mov is used.
  782.  
  783.           For example, if you have a quicktime animation made up of
  784.           two files named: "spin.rsrc" and "spin.data",  you can
  785.           display them using Xanim with either of the following
  786.  
  787.  
  788.  
  789.      Page 12                                          (printed 8/1/95)
  790.  
  791.  
  792.  
  793.  
  794.  
  795.  
  796.      XXXXAAAAnnnniiiimmmm((((1111))))     XXXXAAAAnnnniiiimmmm BBBBeeeettttaaaa AAAAuuuuddddiiiioooo RRRReeeevvvv 2222....22229999....7777....8888 ((((00002222MMMMaaaayyyy99995555))))     XXXXAAAAnnnniiiimmmm((((1111))))
  797.  
  798.  
  799.  
  800.           commands "xanim spin" or "xanim spin.rsrc".  XAnim is smart
  801.           enough to add/modfiy the ".rsrc" and ".data" endings as
  802.           needed.
  803.  
  804.           If you use AUFS from the Columbia Appletalk Package, then
  805.           Macintosh files have their data fork stored in the expected
  806.           place, and the resource fork is in a file with the same name
  807.           in a .resource subdirectory. Therefore, if the data fork is
  808.           in "spin", and the resource fork is in ".resource/spin", the
  809.           movie can be displayed with "xanim spin".
  810.  
  811.           For "flattened/merged_fork" quicktime animations, you need
  812.           to specify the entire file name.
  813.  
  814.           NOTE: XAnim doesn't support 100% of the quicktime format.
  815.  
  816.      AAAAUUUUTTTTHHHHOOOORRRR
  817.           Mark Podlipec
  818.  
  819.           podlipec@wellfleet.com
  820.  
  821.           podlipec@shell.portal.com
  822.  
  823.           http://www.portal.com/~podlipec/home.html  "The XAnim Home
  824.           Page"
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842.  
  843.  
  844.  
  845.  
  846.  
  847.  
  848.  
  849.  
  850.  
  851.  
  852.  
  853.  
  854.  
  855.      Page 13                                          (printed 8/1/95)
  856.  
  857.  
  858.  
  859.